home *** CD-ROM | disk | FTP | other *** search
/ Visual Cafe 3 / Visual Cafe 3.ISO / Vcafe / Source.bin / ButtonBaseBeanInfo.java < prev    next >
Text File  |  1998-08-21  |  20KB  |  522 lines

  1. package symantec.itools.awt;
  2.  
  3. import java.beans.*;
  4. import symantec.itools.beans.*;
  5. import java.util.ResourceBundle;
  6.  
  7. //  08/06/97    LAB    Changed connection getInfoTipColor to getButtonColor.
  8. //  08/09/97    LAB    Connection type was set to boolean when it should be void for toggle button
  9. //                    focus border and toggle notify while pressed.
  10. //  09/07/97    LAB    Fixed misspelling of descriptions.
  11. //  10/06/97    LAB    Added connection for simulateClick.
  12. //  10/07/97    LAB    Moved connection for simulateClick before call to copy the vector so it will
  13. //                    show up properly (oops).
  14.  
  15. /**
  16.  * BeanInfo for ButtonBase.
  17.  *
  18.  */
  19.  
  20. public class ButtonBaseBeanInfo extends SimpleBeanInfo {
  21.  
  22.     /**
  23.      * Constructs a ButtonBaseBeanInfo object.
  24.      */
  25.     public ButtonBaseBeanInfo() {
  26.     }
  27.  
  28.     /**
  29.      * Gets a BeanInfo for the superclass of this bean.
  30.      * @return BeanInfo[] containing this bean's superclass BeanInfo
  31.      */
  32.     public BeanInfo[] getAdditionalBeanInfo() {
  33.         try {
  34.             BeanInfo[] bi = new BeanInfo[1];
  35.             bi[0] = Introspector.getBeanInfo(beanClass.getSuperclass());
  36.             return bi;
  37.         }
  38.         catch (IntrospectionException e) { throw new Error(e.toString());}
  39.     }
  40.  
  41.     /**
  42.      * Gets the SymantecBeanDescriptor for this bean.
  43.      * @return an object of type SymantecBeanDescriptor
  44.      * @see symantec.itools.beans.SymantecBeanDescriptor
  45.      */
  46.     public BeanDescriptor getBeanDescriptor() {
  47.         SymantecBeanDescriptor bd = new SymantecBeanDescriptor(beanClass);
  48.  
  49.         return (BeanDescriptor) bd;
  50.     }
  51.  
  52.     /**
  53.      * Gets an array of descriptions of the methods used for "connections" by
  54.      * Visual CafΘ's Interaction Wizard.
  55.      * Included in each method description is a CONNECTIONS ConnectionDescriptor.
  56.      * @return method descriptions for this bean
  57.      * @see symantec.itools.beans.ConnectionDescriptor#CONNECTIONS
  58.      */
  59.     public MethodDescriptor[] getMethodDescriptors() {
  60.         Class[] args;
  61.         ConnectionDescriptor connection;
  62.         java.util.Vector connections;
  63.         java.util.Vector md = new java.util.Vector();
  64.         ResourceBundle conn = ResourceBundle.getBundle("symantec.itools.resources.ConnBundle");
  65.  
  66.         try{
  67.             args = null;
  68.             MethodDescriptor getBevelHeight = new MethodDescriptor(beanClass.getMethod("getBevelHeight", args));
  69.  
  70.             connections = new java.util.Vector();
  71.             connection = new ConnectionDescriptor("output", "int", "",
  72.                                     "%name%.getBevelHeight()",
  73.                                     conn.getString("getBevelHeight"));
  74.             connections.addElement(connection);
  75.  
  76.             getBevelHeight.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  77.             md.addElement(getBevelHeight);
  78.         } catch (Exception e) { throw new Error("getBevelHeight:: " + e.toString()); }
  79.  
  80.         try{
  81.             args = null;
  82.             MethodDescriptor isShowURLStatus = new MethodDescriptor(beanClass.getMethod("isShowURLStatus", args));
  83.  
  84.             connections = new java.util.Vector();
  85.             connection = new ConnectionDescriptor("output", "boolean", "",
  86.                                     "%name%.isShowURLStatus()",
  87.                                     conn.getString("isShowURLStatus"));
  88.             connections.addElement(connection);
  89.  
  90.             connection = new ConnectionDescriptor("output", "boolean", "",
  91.                                     "!%name%.isShowURLStatus()",
  92.                                     conn.getString("isNotShowURLStatus"));
  93.             connections.addElement(connection);
  94.  
  95.             isShowURLStatus.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  96.             md.addElement(isShowURLStatus);
  97.         } catch (Exception e) { throw new Error("isShowURLStatus:: " + e.toString()); }
  98.  
  99.         try{
  100.             args = new Class[1];
  101.             args[0] = java.net.URL.class ;
  102.             MethodDescriptor setLinkURL = new MethodDescriptor(beanClass.getMethod("setLinkURL", args));
  103.  
  104.             connections = new java.util.Vector();
  105.             connection = new ConnectionDescriptor("input", "RelativeURL", "",
  106.                                     "%name%.setLinkURL(symantec.itools.net.RelativeURL.getURL(%arg%));",
  107.                                     conn.getString("setLinkURLRelative"));
  108.             connections.addElement(connection);
  109.  
  110.             connection = new ConnectionDescriptor("input", "URL", "",
  111.                                     "%name%.setLinkURL(%arg%);",
  112.                                     conn.getString("setLinkURL"));
  113.             connections.addElement(connection);
  114.  
  115.             setLinkURL.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  116.             md.addElement(setLinkURL);
  117.         } catch (Exception e) { throw new Error("setLinkURL:: " + e.toString()); }
  118.  
  119.         try{
  120.             args = null;
  121.             MethodDescriptor getNotifyDelay = new MethodDescriptor(beanClass.getMethod("getNotifyDelay", args));
  122.  
  123.             connections = new java.util.Vector();
  124.             connection = new ConnectionDescriptor("output", "int", "",
  125.                                     "%name%.getNotifyDelay()",
  126.                                     conn.getString("getNotifyDelay"));
  127.             connections.addElement(connection);
  128.  
  129.             getNotifyDelay.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  130.             md.addElement(getNotifyDelay);
  131.         } catch (Exception e) { throw new Error("getNotifyDelay:: " + e.toString()); }
  132.  
  133.         try{
  134.             args = new Class[1];
  135.             args[0] = java.lang.Integer.TYPE ;
  136.             MethodDescriptor setBevelHeight = new MethodDescriptor(beanClass.getMethod("setBevelHeight", args));
  137.  
  138.             connections = new java.util.Vector();
  139.             connection = new ConnectionDescriptor("input", "int", "",
  140.                                     "%name%.setBevelHeight(%arg%);",
  141.                                     conn.getString("setBevelHeight"));
  142.             connections.addElement(connection);
  143.  
  144.             setBevelHeight.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  145.             md.addElement(setBevelHeight);
  146.         } catch (Exception e) { throw new Error("setBevelHeight:: " + e.toString()); }
  147.  
  148.         try{
  149.             args = new Class[1];
  150.             args[0] = java.lang.Integer.TYPE ;
  151.             MethodDescriptor setNotifyDelay = new MethodDescriptor(beanClass.getMethod("setNotifyDelay", args));
  152.  
  153.             connections = new java.util.Vector();
  154.             connection = new ConnectionDescriptor("input", "int", "",
  155.                                     "%name%.setNotifyDelay(%arg%);",
  156.                                     conn.getString("setNotifyDelay"));
  157.             connections.addElement(connection);
  158.  
  159.             setNotifyDelay.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  160.             md.addElement(setNotifyDelay);
  161.         } catch (Exception e) { throw new Error("setNotifyDelay:: " + e.toString()); }
  162.  
  163.         try{
  164.             args = null;
  165.             MethodDescriptor isShowFocus = new MethodDescriptor(beanClass.getMethod("isShowFocus", args));
  166.  
  167.             connections = new java.util.Vector();
  168.             connection = new ConnectionDescriptor("output", "boolean", "",
  169.                                     "%name%.isShowFocus()",
  170.                                     conn.getString("isShowFocus"));
  171.             connections.addElement(connection);
  172.  
  173.             isShowFocus.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  174.             md.addElement(isShowFocus);
  175.         } catch (Exception e) { throw new Error("isShowFocus:: " + e.toString()); }
  176.  
  177.         try{
  178.             args = new Class[1];
  179.             args[0] = java.lang.Boolean.TYPE ;
  180.             MethodDescriptor setUseOffset = new MethodDescriptor(beanClass.getMethod("setUseOffset", args));
  181.  
  182.             connections = new java.util.Vector();
  183.             connection = new ConnectionDescriptor("input", "void", "",
  184.                                     "%name%.setUseOffset(true);",
  185.                                     conn.getString("UseOffset"));
  186.             connections.addElement(connection);
  187.  
  188.             connection = new ConnectionDescriptor("input", "void", "",
  189.                                     "%name%.setUseOffset(false);",
  190.                                     conn.getString("NotUseOffset"));
  191.             connections.addElement(connection);
  192.  
  193.             connection = new ConnectionDescriptor("input", "void", "",
  194.                                     "%name%.setUseOffset(!%name%.isUseOffset());",
  195.                                     conn.getString("ToggleUseOffset"));
  196.             connections.addElement(connection);
  197.  
  198.             connection = new ConnectionDescriptor("input", "boolean", "",
  199.                                     "%name%.setUseOffset(%arg%);",
  200.                                     conn.getString("UseOffsetValue"));
  201.             connections.addElement(connection);
  202.  
  203.             setUseOffset.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  204.             md.addElement(setUseOffset);
  205.         } catch (Exception e) { throw new Error("setUseOffset:: " + e.toString()); }
  206.  
  207.         try{
  208.             args = null;
  209.             MethodDescriptor isNotifyWhilePressed = new MethodDescriptor(beanClass.getMethod("isNotifyWhilePressed", args));
  210.  
  211.             connections = new java.util.Vector();
  212.             connection = new ConnectionDescriptor("output", "boolean", "",
  213.                                     "%name%.isNotifyWhilePressed()",
  214.                                     conn.getString("isNotifyWhilePressed"));
  215.             connections.addElement(connection);
  216.  
  217.             connection = new ConnectionDescriptor("output", "boolean", "",
  218.                                     "!%name%.isNotifyWhilePressed()",
  219.                                     conn.getString("isNotNotifyWhilePressed"));
  220.             connections.addElement(connection);
  221.  
  222.             isNotifyWhilePressed.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  223.             md.addElement(isNotifyWhilePressed);
  224.         } catch (Exception e) { throw new Error("isNotifyWhilePressed:: " + e.toString()); }
  225.  
  226.         try{
  227.             args = null;
  228.             MethodDescriptor getLinkURL = new MethodDescriptor(beanClass.getMethod("getLinkURL", args));
  229.  
  230.             connections = new java.util.Vector();
  231.             connection = new ConnectionDescriptor("output", "URL", "",
  232.                                     "%name%.getLinkURL()",
  233.                                     conn.getString("getLinkURL"));
  234.             connections.addElement(connection);
  235.  
  236.             getLinkURL.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  237.             md.addElement(getLinkURL);
  238.         } catch (Exception e) { throw new Error("getLinkURL:: " + e.toString()); }
  239.  
  240.         try{
  241.             args = null;
  242.             MethodDescriptor getBorderColor = new MethodDescriptor(beanClass.getMethod("getBorderColor", args));
  243.  
  244.             connections = new java.util.Vector();
  245.             connection = new ConnectionDescriptor("output", "Color", "",
  246.                                     "%name%.getBorderColor()",
  247.                                     conn.getString("getBorderColor"));
  248.             connections.addElement(connection);
  249.  
  250.             getBorderColor.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  251.             md.addElement(getBorderColor);
  252.         } catch (Exception e) { throw new Error("getBorderColor:: " + e.toString()); }
  253.  
  254.         try{
  255.             args = new Class[1];
  256.             args[0] = java.awt.Color.class ;
  257.             MethodDescriptor setBorderColor = new MethodDescriptor(beanClass.getMethod("setBorderColor", args));
  258.  
  259.             connections = new java.util.Vector();
  260.             connection = new ConnectionDescriptor("input", "Color", "",
  261.                                     "%name%.setBorderColor(%arg%);",
  262.                                     conn.getString("setBorderColor"));
  263.             connections.addElement(connection);
  264.  
  265.             setBorderColor.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  266.             md.addElement(setBorderColor);
  267.         } catch (Exception e) { throw new Error("setBorderColor:: " + e.toString()); }
  268.  
  269.         try{
  270.             args = new Class[1];
  271.             args[0] = java.lang.String.class ;
  272.             MethodDescriptor setFrame = new MethodDescriptor(beanClass.getMethod("setFrame", args));
  273.  
  274.             connections = new java.util.Vector();
  275.             connection = new ConnectionDescriptor("input", "String", "",
  276.                                     "%name%.setFrame(%arg%);",
  277.                                     conn.getString("setFrame"));
  278.             connections.addElement(connection);
  279.  
  280.             setFrame.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  281.             md.addElement(setFrame);
  282.         } catch (Exception e) { throw new Error("setFrame:: " + e.toString()); }
  283.  
  284.         try{
  285.             args = new Class[1];
  286.             args[0] = java.lang.Boolean.TYPE ;
  287.             MethodDescriptor setShowFocus = new MethodDescriptor(beanClass.getMethod("setShowFocus", args));
  288.  
  289.             connections = new java.util.Vector();
  290.             connection = new ConnectionDescriptor("input", "boolean", "",
  291.                                     "%name%.setShowFocus(%arg%);",
  292.                                     conn.getString("setShowFocus"));
  293.             connections.addElement(connection);
  294.  
  295.             connection = new ConnectionDescriptor("input", "void", "",
  296.                                     "%name%.setShowFocus(!%name%.isShowFocus());",
  297.                                     conn.getString("ToggleShowFocus"));
  298.             connections.addElement(connection);
  299.  
  300.             setShowFocus.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  301.             md.addElement(setShowFocus);
  302.         } catch (Exception e) { throw new Error("setShowFocus:: " + e.toString()); }
  303.  
  304.         try{
  305.             args = new Class[1];
  306.             args[0] = java.lang.Boolean.TYPE ;
  307.             MethodDescriptor setShowURLStatus = new MethodDescriptor(beanClass.getMethod("setShowURLStatus", args));
  308.  
  309.             connections = new java.util.Vector();
  310.             connection = new ConnectionDescriptor("input", "void", "",
  311.                                     "%name%.setShowURLStatus(true);",
  312.                                     conn.getString("setShowURLStatus"));
  313.             connections.addElement(connection);
  314.  
  315.             connection = new ConnectionDescriptor("input", "void", "",
  316.                                     "%name%.setShowURLStatus(false);",
  317.                                     conn.getString("NotShowURLStatus"));
  318.             connections.addElement(connection);
  319.  
  320.             connection = new ConnectionDescriptor("input", "void", "",
  321.                                     "%name%.setShowURLStatus(!%name%.isShowURLStatus());",
  322.                                     conn.getString("ToggleShowURLStatus"));
  323.             connections.addElement(connection);
  324.  
  325.             connection = new ConnectionDescriptor("input", "boolean", "",
  326.                                     "%name%.setShowURLStatus(%arg%);",
  327.                                     conn.getString("ShowURLStatusValue"));
  328.             connections.addElement(connection);
  329.  
  330.             setShowURLStatus.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  331.             md.addElement(setShowURLStatus);
  332.         } catch (Exception e) { throw new Error("setShowURLStatus:: " + e.toString()); }
  333.  
  334.         try{
  335.             args = new Class[1];
  336.             args[0] = java.awt.Color.class ;
  337.             MethodDescriptor setButtonColor = new MethodDescriptor(beanClass.getMethod("setButtonColor", args));
  338.  
  339.             connections = new java.util.Vector();
  340.             connection = new ConnectionDescriptor("input", "Color", "",
  341.                                     "%name%.setButtonColor(%arg%);",
  342.                                     conn.getString("setButtonColor"));
  343.             connections.addElement(connection);
  344.  
  345.             setButtonColor.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  346.             md.addElement(setButtonColor);
  347.         } catch (Exception e) { throw new Error("setButtonColor:: " + e.toString()); }
  348.  
  349.         try{
  350.             args = null;
  351.             MethodDescriptor isUseOffset = new MethodDescriptor(beanClass.getMethod("isUseOffset", args));
  352.  
  353.             connections = new java.util.Vector();
  354.             connection = new ConnectionDescriptor("output", "boolean", "",
  355.                                     "%name%.isUseOffset()",
  356.                                     conn.getString("isUseOffset"));
  357.             connections.addElement(connection);
  358.  
  359.             connection = new ConnectionDescriptor("output", "boolean", "",
  360.                                     "!%name%.isUseOffset()",
  361.                                     conn.getString("isNotUseOffset"));
  362.             connections.addElement(connection);
  363.  
  364.             isUseOffset.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  365.             md.addElement(isUseOffset);
  366.         } catch (Exception e) { throw new Error("isUseOffset:: " + e.toString()); }
  367.  
  368.         try{
  369.             args = new Class[1];
  370.             args[0] = java.lang.Boolean.TYPE ;
  371.             MethodDescriptor setNotifyWhilePressed = new MethodDescriptor(beanClass.getMethod("setNotifyWhilePressed", args));
  372.  
  373.             connections = new java.util.Vector();
  374.             connection = new ConnectionDescriptor("input", "void", "",
  375.                                     "%name%.setNotifyWhilePressed(true);",
  376.                                     conn.getString("setNotifyWhilePressed"));
  377.             connections.addElement(connection);
  378.  
  379.             connection = new ConnectionDescriptor("input", "void", "",
  380.                                     "%name%.setNotifyWhilePressed(false);",
  381.                                     conn.getString("NotNotifyWhilePressed"));
  382.             connections.addElement(connection);
  383.  
  384.             connection = new ConnectionDescriptor("input", "void", "",
  385.                                     "%name%.setNotifyWhilePressed(!%name%.isNotifyWhilePressed());",
  386.                                     conn.getString("ToggleNotifyWhilePressed"));
  387.             connections.addElement(connection);
  388.  
  389.             connection = new ConnectionDescriptor("input", "boolean", "",
  390.                                     "%name%.setNotifyWhilePressed(%arg%);",
  391.                                     conn.getString("NotifyWhilePressedValue"));
  392.             connections.addElement(connection);
  393.  
  394.             setNotifyWhilePressed.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  395.             md.addElement(setNotifyWhilePressed);
  396.         } catch (Exception e) { throw new Error("setNotifyWhilePressed:: " + e.toString()); }
  397.  
  398.         try{
  399.             args = null;
  400.             MethodDescriptor getFrame = new MethodDescriptor(beanClass.getMethod("getFrame", args));
  401.  
  402.             connections = new java.util.Vector();
  403.             connection = new ConnectionDescriptor("output", "String", "",
  404.                                     "%name%.getFrame()",
  405.                                     conn.getString("getFrame"));
  406.             connections.addElement(connection);
  407.  
  408.             getFrame.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  409.             md.addElement(getFrame);
  410.         } catch (Exception e) { throw new Error("getFrame:: " + e.toString()); }
  411.  
  412.         try{
  413.             args = null;
  414.             MethodDescriptor getButtonColor = new MethodDescriptor(beanClass.getMethod("getButtonColor", args));
  415.  
  416.             connections = new java.util.Vector();
  417.             connection = new ConnectionDescriptor("output", "Color", "",
  418.                                     "%name%.getButtonColor()",
  419.                                     conn.getString("getButtonColor"));
  420.             connections.addElement(connection);
  421.  
  422.             getButtonColor.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  423.             md.addElement(getButtonColor);
  424.         } catch (Exception e) { throw new Error("getButtonColor:: " + e.toString()); }
  425.  
  426.         try{
  427.             args = null;
  428.             MethodDescriptor simulateClick = new MethodDescriptor(beanClass.getMethod("simulateClick", args));
  429.  
  430.             connections = new java.util.Vector();
  431.             connection = new ConnectionDescriptor("input", "void", "",
  432.                                     "%name%.simulateClick();",
  433.                                     conn.getString("simulateClick"));
  434.             connections.addElement(connection);
  435.  
  436.             simulateClick.setValue(ConnectionDescriptor.CONNECTIONS, connections);
  437.             md.addElement(simulateClick);
  438.         } catch (Exception e) { throw new Error("simulateClick:: " + e.toString()); }
  439.  
  440.         MethodDescriptor[] rv = new MethodDescriptor[md.size()];
  441.         md.copyInto(rv);
  442.  
  443.         return rv;
  444.     }
  445.  
  446.     /**
  447.      * Returns descriptions of this bean's properties.
  448.      */
  449.     public PropertyDescriptor[] getPropertyDescriptors() {
  450.         ResourceBundle prop = ResourceBundle.getBundle("symantec.itools.resources.PropBundle");
  451.         String s;
  452.  
  453.         try{
  454.         PropertyDescriptor bevelHeight = new PropertyDescriptor("bevelHeight", beanClass);
  455.         bevelHeight.setBound(true);
  456.         bevelHeight.setConstrained(true);
  457.         bevelHeight.setDisplayName(prop.getString("bevelHeight"));
  458.  
  459.         PropertyDescriptor notifyDelay = new PropertyDescriptor("notifyDelay", beanClass);
  460.         notifyDelay.setBound(true);
  461.         notifyDelay.setConstrained(true);
  462.         notifyDelay.setDisplayName(prop.getString("notifyDelay"));
  463.  
  464.         PropertyDescriptor notifyWhilePressed = new PropertyDescriptor("notifyWhilePressed", beanClass);
  465.         notifyWhilePressed.setBound(true);
  466.         notifyWhilePressed.setConstrained(true);
  467.         notifyWhilePressed.setDisplayName(prop.getString("notifyWhilePressed"));
  468.  
  469.         PropertyDescriptor showFocus = new PropertyDescriptor("showFocus", beanClass);
  470.         showFocus.setBound(true);
  471.         showFocus.setConstrained(true);
  472.         showFocus.setDisplayName(prop.getString("showFocus"));
  473.  
  474.         PropertyDescriptor useOffset = new PropertyDescriptor("useOffset", beanClass);
  475.         useOffset.setBound(true);
  476.         useOffset.setConstrained(true);
  477.         useOffset.setDisplayName(prop.getString("useOffset"));
  478.  
  479.         PropertyDescriptor showURLStatus = new PropertyDescriptor("showURLStatus", beanClass);
  480.         showURLStatus.setBound(true);
  481.         showURLStatus.setConstrained(true);
  482.         showURLStatus.setDisplayName(prop.getString("showURLStatus"));
  483.  
  484.         PropertyDescriptor buttonColor = new PropertyDescriptor("buttonColor", beanClass);
  485.         buttonColor.setBound(true);
  486.         buttonColor.setConstrained(true);
  487.         buttonColor.setDisplayName(prop.getString("buttonColor"));
  488.  
  489.         PropertyDescriptor borderColor = new PropertyDescriptor("borderColor", beanClass);
  490.         borderColor.setBound(true);
  491.         borderColor.setConstrained(true);
  492.         borderColor.setDisplayName(prop.getString("borderColor"));
  493.  
  494.         PropertyDescriptor linkURL = new PropertyDescriptor("linkURL", beanClass);
  495.         linkURL.setBound(true);
  496.         linkURL.setConstrained(true);
  497.         linkURL.setDisplayName(prop.getString("linkURL"));
  498.         linkURL.setValue("URLFILTER", prop.getString("htmlURLFILTER"));
  499.  
  500.         PropertyDescriptor frame = new PropertyDescriptor("frame", beanClass);
  501.         frame.setBound(true);
  502.         frame.setConstrained(true);
  503.         frame.setDisplayName(prop.getString("frame"));
  504.  
  505.         PropertyDescriptor[] rv = {
  506.             bevelHeight,
  507.             notifyDelay,
  508.             notifyWhilePressed,
  509.             showFocus,
  510.             useOffset,
  511.             showURLStatus,
  512.             buttonColor,
  513.             borderColor,
  514.             linkURL,
  515.             frame};
  516.         return rv;
  517.         } catch (IntrospectionException e) { throw new Error(e.toString()); }
  518.     }
  519.  
  520.     private final static Class beanClass = ButtonBase.class;
  521.  
  522.     }    //  end of class ButtonBaseBeanInfo